Programmable logic technology refers to electronic components with which it is possible to build digital circuits that are reconfigurable. Unlike a fixed array of logic gates which has a fixed function, a programmable logic device (PLD) usually has an undefined function at the time of manufacture or is at least capable of being changed in the field. Before the PLD can be used in a circuit it must be programmed, i.e., it must be configured. If circumstances change, it can later be re-configured.
Programmable logic has several desirable features that are unfortunately difficult to implement for mass market products using present ASIC (Application Specific Integrated Circuit), ASSP (Application Specific Standard Product), or SW (Software) technologies. Some of these are: low NRE (Non-Recurring Engineering) cost, field programmability, low latency, high data parallelism and throughput, early HW (Hardware) availability, and fast time-to-market.
Programmable logic devices have so far found limited use in portable consumer products due to their high unit cost and power consumption. However, economy and low-power component families have recently been introduced as suppliers are targeting the consumer market for growth. The market growth rate of programmable logic in the year 2006 was 12.5%, more than two times as high as the growth rate of other non-memory ICs (Integrated Circuits), which was 5.5%. Also, the projected growth rate for the 2008-12 time frame is higher than that of the overall IC market.
The most commonly referred to SRAM-based (Static Random Access Memory based) programmable logic components are Field Programmable Gate Arrays (FPGAs) and Complex Programmable Logic Devices (CPLDs). SRAM-based programmable logic, being volatile in nature, must be reprogrammed every time the device has lost its operating voltage. A great body of work has been put into ensuring that this configuration can't be altered by a third party as a result of a malicious attack. For example, the Digital Rights Management (DRM) specification may dictate that certain data cannot be allowed to be directed into digital output. In such a case, for instance, a programmable logic device could be maliciously reprogrammed to direct a datastream meant for digital to analog conversion (to be listened to with headphones) to instead store the data digitally, thus circumventing the DRM protection and leading to possibly very large monetary losses due to unauthorized replication, sale, or both. As another a more sinister example, a programmable logic device that is used for controlling the energy and power management circuitry in a portable device could be maliciously reprogrammed to cause the device's battery to explode. As exploding batteries can lead to great harm to persons and further to multi-million recalls or compensation claims, this could be done purposefully by a person or group with malicious intent. More subtle mal-configurations can be imagined with repairs required and damage to the reputation of the manufacturer or service provider. Furthermore, since the volatile programmable device will lose its configuration when losing its operating voltage, in that event the evidence of the malicious configuration is lost as well.